home *** CD-ROM | disk | FTP | other *** search
/ Acorn User: China / Acorn User China CD-ROM (UK) (Disc B) / Acorn User China CD-ROM (UK) (Disc B).bin / BARNET / ARMLINUX / MAIL / 9804 / text0071.txt < prev    next >
Encoding:
Text File  |  1998-05-13  |  2.6 KB  |  53 lines

  1. On Fri, 17 Apr 1998, Matthew Wilcox wrote:
  2.  
  3. >Andrew Bower
  4. >> Out of interest, is anyone working on write support for ADFS?
  5. >
  6. >I've looked at the current code.  It would be hard to add extendable
  7. >files to it, though in principle, files which are newly created and stay
  8. >the same length should be able to work quite easily.
  9. >
  10. >The trouble is that ADFS (or more truthfully filecore) does not have
  11. >the concept of the inode.  Inodes are what Unix filesystems are built of.
  12. >They have the following properties:
  13. >
  14. >Each file has an inode
  15. >The inode remains the same during the life of the file
  16. >Inodes do not map to more than one file.
  17. >The inode contains all of the metadata for the file except its name.
  18. umm. ADFS doesn't have inodes in the same way UNIX does, but couldn't you
  19. get away with the file's ID that appears in the free space map? (He said,
  20. trying to talk knowledgably, despite the fact that it's 5 years since he
  21. last wrote an ADFS-E-format-filing-system-reader).
  22. The IDs still only map to one file, aren't likely to change over it's
  23. lifetime, and the only problem you have is that the length info is kept in
  24. the directory info.
  25. >I cannot think of a good way of faking inodes for ADFS filesystems *except*
  26. >the following rather horrible idea:
  27. >
  28. >Create a structure in memory for each ADFS filesystem mounted.  This can
  29. >be done lazily.  Assign each file an inode based on some scheme which will
  30. >allow for easy mapping between it and the name of the ADFS file.  Perhaps
  31. >hash buckets.  Note that it's okay to reuse inodes once a file has been
  32. >deleted.
  33. Ur, YUK!! That would be horrible. I mean, mapping names to inodes is gonna
  34. break as soon as you move a mile about the FS somewhere.
  35. >Someone should look at other filing systems to see how they cope with
  36. >filesystems that don't provide nice inodes.  When Dickon Hood & I were
  37. >experimenting with NFS servers under RISC OS, we had a structure that
  38. >worked well; it was a tree, and the inode we returned was the address
  39. >within that list.  You've got me intrigued now, I might just do it.
  40. Good man, writable ADFS would be nice. :)
  41. >The way Russell has done it is faster than this method for read-only
  42. >but will not extend to writable files.
  43. I haven't looked at it yet, but what's he done that stops you writing
  44. files the same way?
  45. >-- 
  46. >Set Alias$Case Set Alias$[ |||| |MSet Alias$Otherwise Set Alias$[ \ Matthew
  47. >"" |MSet Alias$When If %0=%%0 Then Set Alias$[ "" ||MIf %0=%%0    \ Wilcox
  48. >Then Set Alias$Otherwise Set Alias$[ |||||||||||||||| ||MIf       \
  49. >%0=%%0 Then Set Alias$When Set Alias$[ ||||||||||||||||
  50. >unsubscribe: body of `unsubscribe linux-arm' to majordomo@vger.rutgers.edu
  51. >
  52.  
  53.